/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CiaAerea;

import java.io.Serializable;

/**
 *
 * @author mbm
 */
public class Endereco implements Serializable{
    private String rua;
    private String bairro;
    private String complemento;
    private String numero;
    private String CEP;
    private String cidade;
    private String estado;
    private String pais;
    
    public Endereco() throws Exception
    {
        setRua("");
        setBairro("");
        setComplemento("");
        setNumero("");
        setCEP("");
        setCidade("");
        setEstado("");
        setPais("");
    }
    
    
    public Endereco(String rua, String bairro, String complemento, 
            String numero, String CEP, String cidade, String estado, String pais) throws Exception
    {
        setRua(rua);
        setBairro(bairro);
        setComplemento(complemento);
        setNumero(numero);
        setCEP(CEP);
        setCidade(cidade);
        setEstado(estado);
        setPais(pais);
        
    }

    public String getRua() {
        return rua;
    }

    public void setRua(String rua) throws Exception {
        
        if(rua.isEmpty())
        {
            throw new Exception("Campo Rua Vazio !");
            
        }
        else{
            for(int i = 0; i < rua.length(); i++) 
			if(!Character.isLetterOrDigit(rua.charAt(i)) && !Character.isSpaceChar(rua.charAt(i))){
				throw new Exception("Caractere Invalido no campo Rua");
                        }
                        else{
                            this.rua = rua;
                        }
        }
        
    }

    public String getBairro() {
        return bairro;
    }

    public void setBairro(String bairro) throws Exception {
        
        if(bairro.isEmpty())
        {
            throw new Exception("Campo Bairro Vazio !");
            
        }
        else{
            for(int i = 0; i < bairro.length(); i++) 
			if(!Character.isLetterOrDigit(bairro.charAt(i)) && !Character.isSpaceChar(bairro.charAt(i))){
				throw new Exception("Caractere Invalido no campo Bairro");
                        }
                        else{
                            this.bairro = bairro;
                        }
        }
    }

    public String getComplemento() {
        return complemento;
    }

    public void setComplemento(String complemento) throws Exception {
        
                        for(int i = 0; i < complemento.length(); i++) 
			if(!Character.isLetterOrDigit(complemento.charAt(i)) && !Character.isSpaceChar(complemento.charAt(i)) ){
				throw new Exception("Caractere Invalido no campo Complemento");
                        }
                        else{
                            this.complemento = complemento;
                        }
        
        
    }

    public String getNumero() {
        return numero;
    }

    public void setNumero(String numero) throws Exception {
        
        if(numero.isEmpty())
        {
            throw new Exception("Campo Número do endereço Vazio !");
            
        }
        else{
            for(int i = 0; i < numero.length(); i++) 
			if(!Character.isDigit(numero.charAt(i))){
				throw new Exception("Caractere Invalido no campo Número do endereço");
                        }
                        else{
                            this.numero = numero;
                        }
        }
    }

    public String getCEP() {
        return CEP;
    }

    public void setCEP(String CEP) throws Exception {
        
        if(CEP.isEmpty())
        {
            throw new Exception("Campo CEP Vazio !");
            
        }
        else{
            for(int i = 0; i < CEP.length(); i++) 
			if(!Character.isDigit(CEP.charAt(i))){
				throw new Exception("Caractere Invalido no campo CEP");
                        }
                        else{
                            this.CEP = CEP;
                        }
        }
        
    }

    public String getCidade() {
        return cidade;
    }

    public void setCidade(String cidade) throws Exception{
        
        if(cidade.isEmpty())
        {
            throw new Exception("Campo Cidade Vazio !");
            
        }
        else{
            for(int i = 0; i < cidade.length(); i++) 
			if(!Character.isLetterOrDigit(cidade.charAt(i)) && !Character.isSpaceChar(cidade.charAt(i))){
				throw new Exception("Caractere Invalido no campo Cidade");
                        }
                        else{
                            this.cidade = cidade;
                        }
        }
        
    }

    public String getEstado() {
        return estado;
    }

    public void setEstado(String estado) throws Exception {
        
        if(estado.isEmpty())
        {
            throw new Exception("Campo Estado Vazio !");
            
        }
        else{
            for(int i = 0; i < estado.length(); i++) 
			if(!Character.isLetterOrDigit(estado.charAt(i)) && !Character.isSpaceChar(estado.charAt(i))){
				throw new Exception("Caractere Invalido no campo Estado");
                        }
                        else{
                            this.estado = estado;
                        }
        }
        
    }

    public String getPais() {
        return pais;
    }

    public void setPais(String pais) throws Exception {
        
        if(pais.isEmpty())
        {
            throw new Exception("Campo País Vazio !");
            
        }
        else{
            for(int i = 0; i < pais.length(); i++) 
			if(!Character.isLetterOrDigit(pais.charAt(i)) && !Character.isSpaceChar(pais.charAt(i))){
				throw new Exception("Caractere Invalido no campo País");
                        }
                        else{
                            this.pais = pais;
                        }
        }
        
    }
    
    
    
}
